home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1998 July / EnigmA AMIGA RUN 29 (1998)(G.R. Edizioni)(IT)[!][issue 1998-07 & 08].iso / earcd / utils / vinced / include / vnc_lib.fd < prev    next >
Text File  |  1997-07-29  |  10KB  |  334 lines

  1. *-----------------------------------------
  2. *-- VNCLibrary                          --
  3. *-- © 1990-97 THOR-Software inc         --
  4. *--                                     --
  5. *-- Library header file Version 3.50    --
  6. *--                                     --
  7. *-- created 5/2/92 by THOR              --
  8. *-- updated to 2.06  3/28/93            --
  9. *-- updated to 2.08  4/21/93            --
  10. *-- updated to 2.12  6/18/93            --
  11. *-- updated to 2.14  6/25/93            --
  12. *-- updated to 2.16  9/30/93            --
  13. *-- updated to 2.17  10/4/93            --
  14. *-- updated to 2.21  11/28/93           --
  15. *-- updated to 2.26  1/1/94             --
  16. *-- updated to 2.32  2/21/94            --
  17. *-- updated to 3.00  3/1/96             --
  18. *-- updated to 3.12  10/13/96           --
  19. *-- updated to 3.14  11/02/96           --
  20. *-- updated to 3.19  2/8/97             --
  21. *-- updated to 3.30  3/30/97            --
  22. *-- updated to 3.40  5/8/97             --
  23. *-- updated to 3.50  16/7/97            --
  24. *-----------------------------------------
  25. ##base _VNCBase
  26. ##bias 42
  27. *---- system entry points
  28. ##private
  29. VNCInputHandler(events,vncbase)(a0/a1)
  30. ##public
  31. VNCRawKeyConvert(event,buffer,length,keymap,mode)(a0/a1,d1/a2,d0)
  32. *---- SnipMap Support
  33. GetVNCSnip()()
  34. SetVNCSnip(snip)(a0)
  35. AddVNCSnipHook(hook)(a0)
  36. RemVNCSnipHook(hook)(a0)
  37. *---- 2 slots reserved here
  38. ##bias 90
  39. *---- global patchable hook control. Don't call it, patch it
  40. InstallGlobalHooks(cn)(a5)
  41. *---- tabexpansion control
  42. SwitchTabExpansion(cn,onoff)(a5,d0)
  43. HandleTabExpansion(cn,len,pos,dir,buf,owner)(a5,d0,d1,d4,a0,a1)
  44. AbortTabExpansion(cn)(a5)
  45. *---- system entry points, continued
  46. ##private
  47. ImVNCInputHandler(events,vncbase)(a0/a1)
  48. VNCPost()()
  49. SysCopySnip(cn)(a5)
  50. SysPasteSnip(cn)(a5)
  51. VNCPreAdd()()
  52. VNCPostRemove()()
  53. *---- CNWindow support
  54. ##public
  55. AddWindow(cn)(a5)
  56. RemWindow(cn)(a5)
  57. LockWindow(cn)(a5)
  58. UnLockWindow(cn)(a5)
  59. AllocCNWindow(cn)(a5)
  60. FreeCNWindow(cn)(a5)
  61. OpenViNCWindow(cn,newwindow)(a5,a0)
  62. CloseViNCWindow(cn)(a5)
  63. ##private
  64. LockList()()
  65. UnLockList()()
  66. ##public
  67. FindCNWindow(filehandle)(d1)
  68. UnFindCNWindow(filehandle)(d1)
  69. *---- Preferences Support
  70. LockPrefs()()
  71. UnLockPrefs()()
  72. SetVNCPrefs(buffer,len)(a0/d0)
  73. GetVNCPrefs(buffer,len)(a0/d0)
  74. GetVNCDefaultPrefs(buffer,len)(a0/d0)
  75. LoadPrefs(buffer,max)(a0/d0)
  76. SetWindowPrefs(cn,buffer,len)(a5,a0/d0)
  77. GetWindowPrefs(cn,buffer,len)(a5,a0/d0)
  78. *--- 2 slots reserved here
  79. ##bias 282
  80. ReduceINPLines(cn,max)(a5,d0)
  81. ReduceUpperLines(cn,max)(a5,d0)
  82. ReduceLowerLines(cn,max)(a5,d0)
  83. LoadPrefsFrom(buffer,max,file)(a0/d0,a1)
  84. List2Prefs(mlist,blist,prefs,mlen,blen,mnum,bnum)(a0,a2,a1,d0,d2,d1,d3)
  85. Prefs2List(mlist,blist,prefs,mlen,blen,mnum,bnum)(a0,a2,a1,d0,d2,d1,d3)
  86. AllocPrefsBuffer()()
  87. FreePrefsBuffer(buf)(a1)
  88. *---- entry points for creating custom windows
  89. DosInitPC()()
  90. MainInitPC()()
  91. MountHandler(name,path,segment,override)(a0/a1,d1,d0)
  92. DisMountHandler(segment)(d1)
  93. AddVNCHook(cn,hook)(a5,a0)
  94. RemVNCHook(cn,hook)(a5,a0)
  95. *---- patchable hooks for window open/close messaging. Don't call them, patch them
  96. SendRequestPattern(cn,pat)(a5,a0)
  97. SendWindowOpens(cn,window)(a5,a0)
  98. SendWindowCloses(cn,window)(a5,a0)
  99. SendWindowQuits(cn)(a5)
  100. ##bias 390
  101. *---- obsolete device support functions, use the pooled functions below !
  102. VNCCreateExtIO(port,size)(a1/d0)
  103. VNCDeleteExtIO(ioreq)(a1)
  104. VNCCreateStdIO(port)(a1)
  105. VNCDeleteStdIO(ioreq)(a1)
  106. VNCCreatePort(name,pri)(a1/d0)
  107. VNCDeletePort(port)(a1)
  108. VNCNewList(list)(a0)
  109. ##private
  110. DelayAWhile(cn)(a5)
  111. ##public
  112. *---- More support functions and hooks, added in 3.0
  113. VNCRequestFile(cn,vncreq)(a5,a0)
  114. *---- Patchable hooks (try if you can do better)
  115. CtrlZSuspend(cn,owner)(a5,a4)
  116. *---- Even more support functions
  117. VNCUniqueID()()
  118. GetNodeN(list,count)(a0,d0)
  119. *---- pooled editor memory management (static and dynamic)
  120. AllocEdMem(cn,bytesize,reqments)(a5,d0/d1)
  121. FreeEdMem(cn,mem)(a5,a1)
  122. AllocLine(cn,size)(a5,d0)
  123. FreeLine(cn,line)(a5,a0)
  124. GetYLine(cn,position)(a5,d0)
  125. GetForcedYLine(cn,position)(a5,d0)
  126. *---- line scrolling
  127. LogicalScrollUp(cn,count)(a5,d0)
  128. LogicalScrollDown(cn,count)(a5,d0)
  129. LogicalRemoveNLines(cn,count,position)(a5,d0/d1)
  130. LogicalInsertNBlankLines(cn,count,position)(a5,d0/d1)
  131. *---- 1.3 callable allocvec functions
  132. VNCAllocVec(bytesize,reqments)(d0,d1)
  133. VNCFreeVec(vec)(a1)
  134. *---- patchable job control hooks
  135. NotifyChOwner(cn,old,new,cmd)(a5,a0,a1,d0)
  136. NotifyClearScreen(cn)(a5)
  137. *---- number conversion and strings
  138. VNCAtoI(strsuccptrptr)(a0)
  139. VNCHtoI(strsuccptrptr)(a0)
  140. VNCStrToL(strsuccptrptr,base)(a0/d0)
  141. ##private
  142. VNCReserved03()()
  143. ##public
  144. VNCItoA(number,buffer)(d0/a0)
  145. ##private
  146. VNCReserved04()()
  147. VNCObsoleteStrLen(str)(a0)
  148. ##public
  149. VNCStrCmp(str1,str2)(a0/a1)
  150. VNCStrICmp(str1,str2,first)(a0/a1,d0)
  151. VNCToUpper(char)(d0)
  152. VNCSPrintf(buffer,strem,fmtstr)(a0/a1/a2)
  153. FilterInput(cn,cursorxptr,buffer)(a5,a0/a1)
  154. *---- 1 slot reserved here
  155. ##bias 624
  156. *---- more support 3.0
  157. ConvertWindowTitle(cn,owner,from,to)(a5,a4,a0,a1)
  158. FindCloseMacro(cn,owner)(a5,a4)
  159. PrintSuspend(cn,port,owner)(a5,a0,a4)
  160. *---- scrolling, inserting and deleting
  161. ScrollNLeft(cn,count)(a5,d0)
  162. ScrollNRight(cn,count)(a5,d0)
  163. ScrollNUp(cn,count)(a5,d0)
  164. ScrollNDown(cn,count)(a5,d0)
  165. RemoveNLines(cn,count,position)(a5,d0/d1)
  166. InsertNLines(cn,count,position)(a5,d0/d1)
  167. DeleteLinesDown(cn,position)(a5,d0)
  168. SetTextRange(cn)(a5)
  169. InsertBlock(cn,string,len,pos)(a5,a0/d0,d1)
  170. InsertChar(cn,char,len,pos)(a5,a0/d0,d1)
  171. DeleteChar(cn,size,pos)(a5,d1/d0)
  172. PrintAll(cn)(a5)
  173. RefreshAll(cn)(a5)
  174. *---- 3 slots reserved here
  175. ##bias 738
  176. *---- block functions
  177. BlockStart(cn)(a5)
  178. BlockChange(cn)(a5)
  179. BlockEnd(cn)(a5)
  180. ##private
  181. VNCReserved08()()
  182. ##public
  183. CutBlock(cn)(a5)
  184. CopyBlock(cn)(a5)
  185. PasteBlock(cn)(a5)
  186. PasteCommand(cn)(a5)
  187. HideBlock(cn)(a5)
  188. CopyBlockQuiet(cn)(a5)
  189. VNCMICut(cn)(a5)
  190. VNCMICopy(cn)(a5)
  191. VNCMIPaste(cn)(a5)
  192. VNCMISelectAll(cn)(a5)
  193. CopyBufferToVec(cn)(a5)
  194. RemoveBlock(cn,flags)(a5,d0)
  195. *---- mask functions et al.
  196. GetGlobalRasterMask(cn)(a5)
  197. RemakeRasterLists(cn)(a5)
  198. FlushCopyBuffer(cn)(a5)
  199. *---- more block support 3.0
  200. VNCMICopyQuiet(cn)(a5)
  201. *---- gadget support
  202. HandleGadgets(cn)(a5)
  203. ##private
  204. VNCReserved18()()
  205. VNCReserved19()()
  206. ##public
  207. GetProp(cn,prop,visible,entries)(a5,a0,d0/d1)
  208. SetProp(cn,prop,visible,entries,position)(a5,a0,d0/d1/d2)
  209. GetXProp(cn)(a5)
  210. GetYProp(cn)(a5)
  211. SetXProp(cn)(a5)
  212. SetYProp(cn)(a5)
  213. ##private
  214. VNCObsoleteBuildPropGadget(cn,edprop,type)(a5,a0,d0)
  215. VNCReserved11()()
  216. ##public
  217. AllocMacro(cn,cmd,num,maxlen)(a5,a0,d0,d1)
  218. AllocButton(cn,cmd,title,num,maxlen,maxtitle)(a5,a0/a1,d0,d1/d2)
  219. *---- 2 slots reserved here
  220. ##bias 948
  221. *---- DOS support functions
  222. VNCReplyPacket(dp,res1,res2)(a0,d0/d1)
  223. AllocAsyncPacket(stream,size)(d0,d1)
  224. QueueOwnerLine(cn,owner,buffer,size)(a5/a4,a0/d0)
  225. PushOwnerLine(cn,owner,buffer,size)(a5/a4,a0/d0)
  226. GetLineData(cn,owner,buffer,size)(a5/a4,a0/d0)
  227. PutLineData(cn,owner,buffer,size)(a5/a4,a0/d0)
  228. VNCLockDeviceList(mode)(d0)
  229. VNCUnLockDeviceList(mode)(d0)
  230. SendAsyncPacket(stream,type,arg1,data,size)(d1,d2,a1,a0/d0)
  231. VNCDoPacket(type,arg1,arg2,arg3,arg4,arg5,arg6,arg7,port)(d0,d1/d2/d3/d4/d5/d6/d7,a0)
  232. *---- line controlling
  233. SaveActual(cn)(a5)
  234. LoadActual(cn)(a5)
  235. ClearActualINP(cn)(a5)
  236. ChangeActualINP(cn,line)(a5,a0)
  237. *---- console hacks
  238. DataToConsole(cn)(a5)
  239. DataFromConsole(cn)(a5)
  240. *---- support functions
  241. SwitchToUser(cn)(a5)
  242. SwitchToDOS(cn)(a5)
  243. *---- job control functions
  244. Foreground(flags,stream)(d0,d1)
  245. Background(flags,stream)(d0,d1)
  246. *---- cursor movement
  247. MoveCursorXY(cn,x,y,flags)(a5,d0/d1,d2)
  248. MoveCursorX(cn,x,flags)(a5,d0,d1)
  249. CursorToLeft(cn)(a5)
  250. CursorToRight(cn)(a5)
  251. DeleteCursorLine(cn,from,to,mask,flags)(a5,d0/d1/d2,d3)
  252. NewSizeWindow(cn)(a5)
  253. SearchWordFWD(cn,flags)(a5,d0)
  254. SearchWordBKWD(cn,flags)(a5,d0)
  255. HandleKeys(cn)(a5)
  256. EmptyWindowPort(cn)(a5)
  257. *---- 4 slots reserved here
  258. ##bias 1152
  259. *---- nenu support
  260. ##private
  261. VNCReserved14()()
  262. ##public
  263. HandleMenu(cn)(a5)
  264. RemoveMenu(cn)(a5)
  265. BuildMenu(cn)(a5)
  266. ##private
  267. VNCReserved20()()
  268. VNCReserved21()()
  269. ##public
  270. RemoveMenuFromWindow(cn)(a5)
  271. AddMenuToWindow(cn)(a5)
  272. BuildMenuStructs(cn,menucommand)(a5,a0)
  273. SetEditItems(cn)(a5)
  274. ConvertString(cn,from,to)(a5,a0/a1)
  275. ##private
  276. VNCReserved22()()
  277. ##public
  278. DoAsciiData(cn,string,len)(a5,a0/d0)
  279. ##private
  280. VNCReserved15()()
  281. VNCReserved16()()
  282. ##public
  283. FreeMacroList(cn,list)(a5,a0)
  284. *---- 3 slots reserved here
  285. ##bias 1266
  286. *---- miscellaneos
  287. PredLine(cn,line)(a5,a2)
  288. SuccLine(cn,line)(a5,a2)
  289. ##private
  290. VNCReserved17()()
  291. ##public
  292. ClearFrame(cn)(a5)
  293. BuildIfNeed(cn)(a5)
  294. DisplayCursor(cn)(a5)
  295. RemoveCursor(cn)(a5)
  296. CmpText(cn,template,pos,cmp)(a5,a0/d0,a1)
  297. SearchToPast(cn)(a5)
  298. SearchToFuture(cn)(a5)
  299. ##private
  300. SearchObsolete1(cn)(a5)
  301. SearchObsolete2(cn)(a5)
  302. ##public
  303. PredStarter(cn,lineptr)(a5,a0)
  304. SuccStarter(cn,lineptr)(a5,a0)
  305. LinearToLine(cn,char,line)(a5,a0,a1)
  306. LinearToAlloc(cn,char,flags)(a5,a0,d0)
  307. LineToLinear(cn,char,line)(a5,a1,a0)
  308. *---- 1 slot reserved here
  309. *---- extended version 3.00 entries: pooled device support
  310. ##bias 1374
  311. PoolCreateExtIO(cn,port,size)(a5,a1/d0)
  312. PoolDeleteExtIO(cn,ioreq)(a5,a1)
  313. PoolCreateStdIO(cn,port)(a5,a1)
  314. PoolDeleteStdIO(cn,ioreq)(a5,a1)
  315. PoolCreatePort(cn,name,pri)(a5,a1/d0)
  316. PoolDeletePort(cn,port)(a5,a1)
  317. *---- 4 slots reserved here
  318. ##bias 1434
  319. *---- extended 3.50 entries: buffer io support
  320. VNCFOpen(name,flags,bufsize)(a0,d0,d1)
  321. VNCFClose(handle)(a0)
  322. VNCFRead(handle,buffer,length)(a0,a1,d1)
  323. VNCFWrite(handle,buffer,length)(a0,a1,d1)
  324. VNCFSeek(handle,offset,mode)(a0,d0,d1)
  325. VNCOneRequester(body)(a0)
  326. VNCTwoRequester(body)(a0)
  327. VNCBuildFailureString(error,dest,header,un)(d0,a1,a2,a0)
  328. GetHistory(filename,flags)(a0,d0)
  329. GetScreen(filename,flags)(a0,d0)
  330. PutHistory(filename,flags)(a0,d0)
  331. PutScreen(filename,flags)(a0,d0)
  332. *---- 4 slots reserved here
  333. ##end
  334.